// process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; // 关闭证书

// let all = null;
// const { exec } = require('child_process');
// const https = require('https');

// const findLeagueClientCommandLine = async () => {
//   return new Promise((resolve, reject) => {
//     exec('"C:\\Windows\\System32\\wbem\\wmic" PROCESS WHERE "name=\'LeagueClientUx.exe\'" GET commandline', (err, stdout) => {
//       if (err) {
//         reject(err);
//       } else {
//         all = stdout;
//         resolve(stdout);
//       }
//     });
//   });
// };

// const getRiotData = async (url) => {
//   const token = all.match(/remoting-auth-token=(.*?)["'\s]/)[1]
//   const port = all.match(/--app-port=(.*?)["'\s]/)[1]
//   const auth = Buffer.from(`riot:${token}`).toString('base64');
//   const headers = {
//     'Accept': 'application/json',
//     'Content-Type': 'application/json',
//     'Authorization': `Basic ${auth}`
//   };
//   const options = {
//     hostname: '127.0.0.1',
//     port: port,
//     path: url,
//     method: 'GET',
//     headers: headers
//   };
//   return new Promise((resolve, reject) => {
//     const req = https.request(options, (res) => {
//       let data = '';
//       res.on('data', (chunk) => {
//         data += chunk;
//       });
//       res.on('end', () => {
//         resolve(data);
//       });
//     });
//     req.on('error', (error) => {
//       reject(error);
//     });
//     req.end();
//   });
// };

// const main = async () => {
//   try {
//     const leagueClientCommandline = await findLeagueClientCommandLine();
//     console.log('LeagueClientUx.exe 命令行参数:', leagueClientCommandline);
//     const currentUser = await getRiotData('/lol-summoner/v1/current-summoner');
//     console.log('感谢使用本程序, AUTHOR: 司, 当前获取到的用户数据:', currentUser);
//   } catch (error) {
//     console.error('发生错误:', error);
//   }
// };

// main();


// =================================================================


// process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
// // 请关闭证书验证直接发起 HTTPS 请求
// const express = require('express');
// const https = require('https');
// const { exec } = require('child_process');

// const app = express();

// app.use(express.json());

// app.get('/api/player-info', async (req, res) => {
//   try {
//     res.header("Access-Control-Allow-Origin", "*");
//     const all = await findLeagueClientCommandLine();
//     const token = all.match(/remoting-auth-token=(.*?)["'\s]/)[1];
//     const port = all.match(/--app-port=(.*?)["'\s]/)[1];
//     const auth = Buffer.from(`riot:${token}`).toString('base64');
//     const headers = {
//       'Accept': 'application/json',
//       'Content-Type': 'application/json',
//       'Authorization': `Basic ${auth}`
//     };
//     let options = {
//       hostname: '127.0.0.1',
//       port: port,
//       path: '/lol-summoner/v1/current-summoner',
//       method: 'GET',
//       headers: headers
//     };
//     let userData = await makeHttpsRequest(options);
//     let userDataJson = JSON.parse(userData);
//     userDataJson.toAuth = `${auth}`;
//     res.json({ code: 0, statusCode: 200, data: userDataJson, msg: "success" });
//   } catch (error) {
//     res.status(500).json({ code: 1, statusCode: 500, data: null, msg: "error" });
//   }
// });

// const findLeagueClientCommandLine = async () => {
//   return new Promise((resolve, reject) => {
//     const command = '"C:\\Windows\\System32\\wbem\\wmic" PROCESS WHERE "name=\'LeagueClientUx.exe\'" GET commandline';
//     exec(command, (error, stdout) => {
//       if (error) {
//         reject(error);
//       } else {
//         resolve(stdout);
//       }
//     });
//   });
// };

// const makeHttpsRequest = (options) => {
//   return new Promise((resolve, reject) => {
//     const req = https.request(options, (res) => {
//       let data = '';
//       res.on('data', (chunk) => {
//         data += chunk;
//       });
//       res.on('end', () => {
//         resolve(data);
//       });
//     });
//     req.on('error', (error) => {
//       reject(error);
//     });
//     req.end();
//   });
// };

// app.listen(3001, () => {
//   console.log('3001');
// });

// ================================================================


// const express = require("express");
// const router = express.Router();
// process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
// const { exec } = require("child_process");
// const https = require("https");

// let allData = null;

// //拿去当前电脑客户端登录的lol用户基础信息
// const findLeagueClientCommandLine = async () => {
//   return new Promise((resolve, reject) => {
//     exec(
//       '"C:\\Windows\\System32\\wbem\\wmic" PROCESS WHERE "name=\'LeagueClientUx.exe\'" GET commandline',
//       (err, stdout) => {
//         if (err) {
//           reject(err);
//         } else {
//           allData = stdout;
//           resolve(stdout);
//         }
//       }
//     );
//   });
// };

// const getRiotData = async (url, method = "GET", params) => {
//   if (allData == null) return false;

//   //通过正则匹配拿到token和port
//   const token = allData.match(/remoting-auth-token=(.*?)["'\s]/)[1];
//   const port = allData.match(/--app-port=(.*?)["'\s]/)[1];
//   const auth = Buffer.from(`riot:${token}`).toString("base64");
//   const headers = {
//     Accept: "application/json",
//     "Content-Type": "application/json",
//     Authorization: `Basic ${auth}`,
//   };
//   const options = {
//     hostname: "127.0.0.1",
//     port: port,
//     path: url,
//     method: method,
//     headers: headers,
//     params: params,
//   };
//   return new Promise((resolve, reject) => {
//     const req = https.request(options, (res) => {
//       let data = "";
//       res.on("data", (chunk) => {
//         data += chunk;
//       });
//       res.on("end", () => {
//         resolve(data);
//       });
//     });
//     req.on("error", (error) => {
//       reject(error);
//     });
//     req.end();
//   });
// };

// const main = async () => {
//   try {
//     const leagueClientCommandline = await findLeagueClientCommandLine();
//     console.log("LeagueClientUx.exe 命令行参数:", leagueClientCommandline);
//   } catch (error) {
//     console.error("发生错误:", error);
//   }
// };

// main();

// //node定义接口
// // 查询本地召唤师信息
// router.get("/getCurrentSummoner", async (req, res) => {
//   const data = await getRiotData("/lol-summoner/v1/current-summoner");
//   res.send(data);
// });

// //根据ppuid查询近期战绩（20局）
// router.get("/getDataByPuuid", async (req, res) => {
//   const puuid = req.query.puuid;
//   const data = await getRiotData(
//     `/lol-match-history/v1/products/lol/${puuid}/matches`
//   );
//   res.send(data);
// });

// //根据name查询召唤师信息
// router.get("/getSummonerInfoByName", async (req, res) => {
//   const name = req.query.name;
//   const data = await getRiotData(
//     encodeURI(`/lol-summoner/v1/summoners?name=${name}`)
//   );
//   res.send(data);
// });

// module.exports = router;
